package com.ozo.boot.common.core.exception.constant;

/**
 * 异常枚举【分类常量】
 * <p>
 * 异常枚举编码由3部分组成，如下：
 * 模块编码（2位） + 分类编码（4位） + 具体项编码（至少1位）
 * <p>
 *
 * @author qiangesoft
 * @date 2024-06-28
 */
public interface ExceptionEnumCategoryConstant {

    /**
     * 默认枚举
     */
    int DEFAULT_EXCEPTION_ENUM = 9999;

    /**
     * 认证异常枚举
     */
    int AUTH_EXCEPTION_ENUM = 1000;

    /**
     * 参数校验异常枚举
     */
    int PARAM_EXCEPTION_ENUM = 2000;

    /**
     * 授权和鉴权异常的枚举
     */
    int PERMISSION_EXCEPTION_ENUM = 3000;

    /**
     * 请求方法相关异常枚举
     */
    int REQUEST_METHOD_EXCEPTION_ENUM = 4000;

    /**
     * 请求类型相关异常枚举
     */
    int REQUEST_TYPE_EXCEPTION_ENUM = 5000;

    /**
     * 服务器内部相关异常枚举
     */
    int SERVER_EXCEPTION_ENUM = 6000;

    /**
     * 状态相关异常枚举
     */
    int STATUS_EXCEPTION_ENUM = 7000;

}
